﻿#add_executable(Zaran2021 main.cpp)

IF (CMAKE_BUILD_TYPE STREQUAL Debug)
	   add_definitions(-DDebug)
ELSEIF (CMAKE_BUILD_TYPE STREQUAL Release)
	   add_definitions(-DRelease)
ENDIF()

aux_source_directory(basic/src dir_basic)
aux_source_directory(CoordTrans/src dir_coord_trans)
aux_source_directory(fluid/src dir_fluid)
aux_source_directory(flux/src dir_flux)
aux_source_directory(geometry/src dir_geometry)
aux_source_directory(gradient/src dir_gradient)
aux_source_directory(grid/src dir_grid)
aux_source_directory(model/src dir_model)
aux_source_directory(numerics/convection/src dir_convection)
aux_source_directory(numerics/viscous/src dir_viscous)
aux_source_directory(ReferenceValue/src dir_reference_value)
aux_source_directory(simulation/src dir_simulation)
aux_source_directory(solver/src dir_solver)
aux_source_directory(TestCase/src dir_test_case)
aux_source_directory(TimeStepping/src dir_time_stepping)
aux_source_directory(Utility/src dir_utility)

add_executable(Zaran2021 main.cpp 
 ${dir_basic} ${dir_coord_trans} ${dir_fluid}
${dir_flux} ${dir_geometry} ${dir_gradient}
${dir_grid} ${dir_mesh} ${dir_model}
${dir_convection} ${dir_viscous} ${dir_reference_value} 
${dir_simulation} ${dir_solver} ${dir_tecplot_polyhedron}
${dir_test_case} ${dir_time_stepping}  ${dir_utility})
target_compile_features(Zaran2021 INTERFACE  cxx_std_17)
#target_link_libraries(Zaran2021 PUBLIC matplotlib_cpp)
 target_include_directories(Zaran2021 PUBLIC ${PROJECT_SOURCE_DIR}/src)
 target_include_directories(Zaran2021 PUBLIC ${PROJECT_SOURCE_DIR}/lib/eigen3)
#target_include_directories(Zaran2021 PUBLIC ${PROJECT_SOURCE_DIR}/lib/matplotlibcpp)
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin/${CMAKE_BUILD_TYPE})
